package com.hliu.shiro.service;

import com.hliu.core.service.IBaseHibernateService;
import com.hliu.shiro.model.User;

/**
 * author: 6
 * date: 13-4-18
 */
public interface IUserService extends IBaseHibernateService<User, Long> {
	/**
	 * 通过用户名和密码验证用户是否通过认证
	 *
	 * @param username
	 * @param password
	 * @return
	 */
	public boolean getExistUserByPrincipalAndCredentials(String username, String password);

	/**
	 * 通过用户名查找这个用户的所有角色和权限
	 *
	 * @param username
	 * @return
	 */
	public User getUserAllRolsAndPermission(String username);

	/**
	 * 通常用户名查找用户是否存在
	 *
	 * @param username
	 * @return
	 */
	public boolean getExistUserByUserName(String username);

	/**
	 * 通过用户名查找用户，用于获取简单用户信息的登录认证
	 *
	 * @param username
	 * @return
	 */
	public User getUserByUserName(String username);
}
